/**********************************************************/
/* Goblin Defense - A tower defense game for Wii Homebrew */
/* Copyright (C) 2009 Ricardo Bueno Cordeiro              */
/* Licensed under de GNU General Public License v2.0      */
/*   See license_gplv2.txt for detalis                    */
/**********************************************************/

#ifndef __DRAW_H_
#define __DRAW_H_

#include <gccore.h>
#include <FreeTypeGX.h>

#define FONT_SIZE 32

#define TOOL_BAR_SIZE (((f32)MAP_SIZE) * 4 

#define LARGEST_DRAWABLE_TEXT 1024

#define DRAW_CONF_TEXT            0
#define DRAW_CONF_DRAW_TEXTURE    1
#define DRAW_CONF_DRAW_NO_TEXTURE 2

void DR_set_error_texture();
void DR_set_sprite_texture();
void DR_set_map_texture(unsigned int map);

void DR_load_textures();

void DR_load_font();

void DR_init(f32 width, f32 height);
void DR_configure(u32 mode);

void DR_draw_text(f32 x, f32 y, f32 scale, const char *s, ...);
void DR_draw_text(f32 x, f32 y, f32 scale, GXColor c, const char *s, ...);
void DR_draw_text(f32 x, f32 y, f32 scale, GXColor c, u16 style, const char *s, ...);

f32 DR_convert_cursor_x(f32 x);
f32 DR_convert_cursor_y(f32 y);

#endif
